package com.newsplatform.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.newsplatform.dto.LoginRequest;
import com.newsplatform.dto.RegisterRequest;
import com.newsplatform.entity.User;

/**
 * 用户服务接口
 * 
 * @author Logan.Li
 */
public interface UserService extends IService<User> {
    
    /**
     * 用户注册
     */
    User register(RegisterRequest request);
    
    /**
     * 用户登录
     */
    String login(LoginRequest request);
    
    /**
     * 根据用户名查找用户
     */
    User findByUsername(String username);
    
    /**
     * 检查用户名是否存在
     */
    boolean existsByUsername(String username);
    
    /**
     * 检查邮箱是否存在
     */
    boolean existsByEmail(String email);
    
}
